page {
  height: 100%;
}
.container {
  display: flex;
  flex-direction: column;
  height: 100vh;
  width: 100%;
  overflow-y: auto;
  background: #f7f7f7;
  .chose-area {
    background: #ffffff;
    .chose-type {
      height: 72rpx;
      padding: 0 30rpx;
      display: flex;
      justify-content: space-between;
      align-items: center;
      .chose-item {
        font-size: 24rpx;
        color: #666;
        display: flex;
        align-items: center;
        .title {
          width: 96rpx;
          overflow: hidden;
          white-space: nowrap;
          text-overflow: ellipsis;
          text-align: end;
        }
        .icon {
          margin-left: 6rpx;
          display: block;
          width: 0;
          height: 0;
          border-left: 13rpx solid transparent;
          border-top: 15rpx solid #666;
          border-right: 13rpx solid transparent;
        }
      }
    }
  }

  .demand-list {
    padding: 0 30rpx;
    .empty-wrap {
      display: flex;
      flex-direction: column;
      padding: 80rpx 0 100rpx;
      align-items: center;
      .empty-img {
        width: 415rpx;
        height: 415rpx;
      }

      .tips {
        margin-top: 10rpx;
        font-size: 30rpx;
        color: #999;
      }
    }
    .list {
      background-color: #fff;
      margin-top: 20rpx;
      padding: 30rpx;
      border-radius: 10rpx;
      .header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        .title {
          display: flex;
          align-items: center;
          .title-icon {
            display: block;
            width: 6rpx;
            height: 35rpx;
            background-color: #6ab0ff;
          }
          .name {
            margin-left: 16rpx;
            font-size: 32rpx;
            color: #333;
            font-weight: bold;
          }
        }
        .price {
          color: #ff4444;
          font-size: 28rpx;
        }
      }
      .main-content {
        margin-top: 15rpx;
        width: 550rpx;
        font-size: 24rpx;
        color: #9e9e9e;
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
      }
      .bottom {
        margin-top: 20rpx;
        display: flex;
        justify-content: space-between;
        color: #9e9e9e;
        .local {
          display: flex;
          font-size: 22rpx;
          text {
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 8rpx 10rpx;
            display: block;
            min-width: 65rpx;
            height: 35rpx;
            background: #f4f4f4;
            border-radius: 4rpx;
          }
        }
        .join-type {
          font-size: 24rpx;
        }
      }
    }
  }

  .cate-title {
    height: 1200rpx;
    .title {
      padding: 30rpx;
      display: flex;
      align-items: center;
      .all-cate {
        color: #1c87f3;
        font-size: 28rpx;
      }
      .title-chose {
        flex: 1;
        display: flex;
        justify-content: center;
        color: #333333;
        font-size: 32rpx;
      }
    }
    .VerticalBox {
      display: flex;
    }

    .VerticalNav {
      height: calc(1200rpx - 50rpx);
      width: 200rpx;
      white-space: initial;
      background-color: #f1f1f1;
      .first-cate {
        color: #0177fd;
      }
    }
    .VerticalNav .cu-item {
      width: 100%;
      text-align: center;
      background-color: #f1f1f1;
      margin: 0;
      border: none;
      height: 100rpx;
      line-height: 100rpx;
      position: relative;
    }

    .VerticalNav .cu-item.cur {
      background-color: #ffffff;
    }

    .VerticalNav .cu-item.cur::after {
      content: "";
      width: 8rpx;
      height: 30rpx;
      border-radius: 10rpx 0 0 10rpx;
      position: absolute;
      background-color: currentColor;
      top: 0;
      right: 0rpx;
      bottom: 0;
      margin: auto;
    }

    .vertical-main {
      height: calc(1200rpx - 50rpx);
      background-color: #ffffff;
      flex: 1;
      .right-main {
        .main-item {
          padding: 30rpx;
          .item-title {
            font-size: 32rpx;
            color: #333;
            font-weight: bold;
          }
          .item-content {
            margin-top: 26rpx;
            display: flex;
            flex-wrap: wrap;
            .item-val {
              margin-bottom: 20rpx;
              margin-right: 17rpx;
              border-radius: 4rpx;
              padding: 10rpx 15rpx;
              height: 56rpx;
              min-width: 126rpx;
              background-color: #f9f9f9;
              color: #666;
              font-size: 24rpx;
            }
          }
        }
      }
    }
  }
  .bottom-btn {
    position: fixed;
    bottom: 80rpx;
    right: 60rpx;
    .img {
      width: 130rpx;
      height: 130rpx;
    }
  }
}
